package org.javaboy.stream_demo.msg;

import io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Date;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Supplier;

@Configuration
public class MsgConfiguration {

    /**
     * 定义一个消费者对象，这个对象会被自动注册到spring容器中，成为 MQ 的消费者
     *
     * @return
     */
    @Bean
    Consumer<String> myInput() {
        return s -> System.out.println("消费：" + s);
    }

    /**
     * 这就是生产者
     * 这个生产者每隔 1s 发送一条消息
     *
     * @return
     */
//    @Bean
    Supplier<String> myOutput() {
        return () -> "hello >>> " + new Date();
    }

    @Bean
    Function<String, String> uppercase() {
        return value -> value.toUpperCase();
    }
}
